/*****************************************************************************************
 * FILE NAME: app_task                       COPYRIGHT (c) cos 2024
 * REVISION:  1.0.0                                     All Rights Reserved
 * DESCRIPTION:
 * =======================================================================================
 * UPDATE HISTORY:
 * REV      AUTHOR      DATE
 * v1.0.0   Tuxin       2024.10.14
 * DESCRIPTION OF CHANGE:
 ****************************************************************************************/
#ifndef __APP_TASK_H
#define __APP_TASK_H

//----------------------------------------------------------------------------------------
// @Project Includes
#include "typedefs.h"

//----------------------------------------------------------------------------------------
// @Global Macro Define in the module
							
//----------------------------------------------------------------------------------------
// @Global Type defines in the module
typedef enum en_task_list
{
    TAST_LIST_REALTIME	= 0,
    TAST_LIST_10MS			= 1,	
    TAST_LIST_250MS			= 2,
    TAST_LIST_500MS			= 3,
    TAST_LIST_1000MS		= 4,

    TASKS_LIST_MAX 
} en_task_list_t;

typedef struct stc_task_components
{
    bool_t RunState;
    uint16_t Timer;
    uint16_t ItvTime;
    void (*TaskHook)(void);
} stc_task_components_t; 

//----------------------------------------------------------------------------------------
// @Export global Variables declare in the module

//----------------------------------------------------------------------------------------
// @Export declaration of functions in the module
void app_task(void);
void app_task_timecount(void);
#endif

// =======================================================================================
// End of file.
// =======================================================================================
